#ifndef SNMPRDBMS_ODBC_H
#define SNMPRDBMS_ODBC_H

#include <sqlext.h>

#define DEBUG_ODBC_TOKEN "odbc"
#define MAX_ODBC_BUFFER_LENGTH 512

struct odbcfield {
  SQLCHAR data[MAX_ODBC_BUFFER_LENGTH];
  SQLCHAR name[MAX_ODBC_BUFFER_LENGTH];
};
typedef struct odbcfield odbcdatafield;

struct odbctable {
	odbcdatafield *fields;
	struct odbctable *next_row;
};
typedef struct odbctable odbcdatatable;

int odbc_connect(const char *cstring);
void odbc_disconnect();
odbcdatatable *odbc_execute(const char *query);
odbcdatatable* odbc_append_table(odbcdatatable *dest, odbcdatatable *src);
SQLCHAR* odbc_get_named_field(const SQLCHAR *fieldname, odbcdatatable* table);
void odbc_free_table(odbcdatatable* table);
#endif
